The present disclosure relates to cloud computing, and more specifically, to integrating applications with endpoints using dynamic port negotiation.
In cloud computing environments, users typically host their workload or applications entirely on third-party cloud services and servers. Hybrid cloud environments built upon cloud computing technologies and concepts to address security and flexibility concerns over relying entirely on third party systems for mission critical or sensitive applications. Hybrid cloud environments combine a public cloud provider with a private cloud platform. Private clouds may be independent of the public cloud and may be set up and hosted by a single organization using technologies similar to those utilized by public cloud providers. Hybrid cloud enables and organization to better control and secure their data in their own private cloud, while still being able to leverage computation resources and scale of the public cloud, for example, executing existing applications in the public cloud using data hosted in a private cloud.
Integrating existing applications into cloud environments presents challenges as these existing applications are often designed for an intranet environment. For example, a first portion of a business application, such as a client portion, running on a first computer in a private cloud. The private cloud may be connected to a public cloud via, for example, a SSH tunnel. The first computer may attempt to establish a connection to a second portion of the business application, such as a back-end server, running on a second computer in the public cloud using a known port. The second computer may then determine a second port for further responses and transmit this second port information to the first computer. The first computer may then attempt to establish a connection on this second port. However, the SSH tunnel is unaware of this second port and is unable to setup and open the respective port for further communications.